1
Herança e a Evolução do Estado
AI035Lesson 2
00:00

Em Ruby, a herança não é apenas sobre compartilhar métodos; é sobre o evolução do estado. Quando criamos uma subclasse como KaraokeSong < Song, estabelecemos uma relação "é-um" onde o filho herda a estrutura do pai enquanto refina sua identidade.

1. A Cadeia de Inicialização

O super palavra-chave é a ponte entre as gerações. Dentro initialize, chamando super passa os argumentos para o construtor do pai, garantindo que as variáveis de instância básicas (@name, @artista) são definidas antes que a subclasse adicione seu estado específico (@letras).

class Song@nome, @artistaclass KaraokeSong@letrassuper() chama o pai

2. Augmentação de Método

Sobrescrever um método como to_s nos permite estender o comportamento. Ao chamar super dentro da nova definição, capturamos a saída de string do pai e simplesmente anexamos os novos dados da subclasse, mantendo um caminho evolutivo limpo.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>